package com.puti.doctor.domian;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.puti.common.core.annotation.Excel;
import com.puti.common.core.web.domain.BaseEntity;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;

/**
 * 商品-订单 商品-订单对象 goods_order
 * 
 * @author puti
 * @date 2021-04-23
 */
public class GoodsOrder extends BaseEntity{
    private static final long serialVersionUID = 1L;

    /** 订单ID */
    private Long orderId;


    /** 用户ID */
    @Excel(name = "用户ID")
    private String orderPatientId;

    /** 商品ID */
    @Excel(name = "商品ID")
    private String orderGoodsId;

    /** 商品购买属性 0：正常购买
1：秒杀活动 */
    @Excel(name = "商品购买属性 0：正常购买1：秒杀活动")
    private Long orderGoodsAttributes;

    /** 商品购买数量 */
    @Excel(name = "商品购买数量")
    private Long orderGoodsCount;

    /** 总金额 */
    @Excel(name = "总金额")
    private BigDecimal orderOldprice;

    /** 实付金额 */
    @Excel(name = "实付金额")
    private BigDecimal orderNewprice;

    /** 下单时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "下单时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date orderTime;

    /** 订单状态 0：等待付款
1：等待发货
2：申请退款
3：交易成功 */
    @Excel(name = "订单状态 0：等待付款1：等待发货2：申请退款3：交易成功")
    private Long orderStatus;

    /** 支付状态 0：未支付
1：已支付 */
    @Excel(name = "支付状态 0：未支付1：已支付")
    private Long orderPayStatus;

    /** 发货状态 0：未发货
1：已发货 */
    @Excel(name = "发货状态 0：未发货1：已发货")
    private Long orderShipStatus;

    /** 收货状态 0：未收货
1：已收货 */
    @Excel(name = "收货状态 0：未收货1：已收货")
    private Long orderReceiptStatus;

    @Excel(name = "收货状态 0：未收货1：已收货")
    private Long orderEvaluationStatus;

    @Excel(name = "售后状态 0：未申请售后1：处理中2：处理完成")
    private Long orderAftersalesStatus;

    @Excel(name = "平台确认商品状态 0：未确认收到货1：已确认收到货")
    private Long orderConfirmReceipt;

    public void setOrderId(Long orderId)
    {
        this.orderId = orderId;
    }

    public Long getOrderId()
    {
        return orderId;
    }
    public void setOrderPatientId(String orderPatientId) 
    {
        this.orderPatientId = orderPatientId;
    }

    public String getOrderPatientId() 
    {
        return orderPatientId;
    }
    public void setOrderGoodsId(String orderGoodsId) 
    {
        this.orderGoodsId = orderGoodsId;
    }

    public String getOrderGoodsId() 
    {
        return orderGoodsId;
    }
    public void setOrderGoodsAttributes(Long orderGoodsAttributes) 
    {
        this.orderGoodsAttributes = orderGoodsAttributes;
    }

    public Long getOrderGoodsAttributes() 
    {
        return orderGoodsAttributes;
    }
    public void setOrderGoodsCount(Long orderGoodsCount)
    {
        this.orderGoodsCount = orderGoodsCount;
    }

    public Long getOrderGoodsCount()
    {
        return orderGoodsCount;
    }
    public void setOrderOldprice(BigDecimal orderOldprice) 
    {
        this.orderOldprice = orderOldprice;
    }

    public BigDecimal getOrderOldprice() 
    {
        return orderOldprice;
    }
    public void setOrderNewprice(BigDecimal orderNewprice) 
    {
        this.orderNewprice = orderNewprice;
    }

    public BigDecimal getOrderNewprice() 
    {
        return orderNewprice;
    }
    public void setOrderTime(Date orderTime) 
    {
        this.orderTime = orderTime;
    }

    public Date getOrderTime() 
    {
        return orderTime;
    }
    public void setOrderStatus(Long orderStatus) 
    {
        this.orderStatus = orderStatus;
    }

    public Long getOrderStatus() 
    {
        return orderStatus;
    }
    public void setOrderPayStatus(Long orderPayStatus) 
    {
        this.orderPayStatus = orderPayStatus;
    }

    public Long getOrderPayStatus() 
    {
        return orderPayStatus;
    }
    public void setOrderShipStatus(Long orderShipStatus) 
    {
        this.orderShipStatus = orderShipStatus;
    }

    public Long getOrderShipStatus() 
    {
        return orderShipStatus;
    }
    public void setgetOrderShipStatus(Long orderReceiptStatus)
    {
        this.orderReceiptStatus = orderReceiptStatus;
    }

    public Long getOrderReceiptStatus()    {
        return orderReceiptStatus;
    }
    public void setOrderReceiptStatus(Long orderReceiptStatus)
    {
        this.orderReceiptStatus = orderReceiptStatus;
    }

    public Long getOrderEvaluationStatus()    {
        return orderEvaluationStatus;
    }
    public void setOrderEvaluationStatus(Long orderEvaluationStatus)
    {
        this.orderEvaluationStatus = orderEvaluationStatus;
    }

    public Long getOrderAftersalesStatus()    {
        return orderAftersalesStatus;
    }
    public void setOrderAftersalesStatus(Long orderAftersalesStatus)
    {
        this.orderAftersalesStatus = orderAftersalesStatus;
    }

    public Long getOrderConfirmReceipt()    {
        return orderConfirmReceipt;
    }
    public void setOrderConfirmReceipt(Long orderConfirmReceipt)
    {
        this.orderConfirmReceipt = orderConfirmReceipt;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("orderId", getOrderId())
            .append("orderPatientId", getOrderPatientId())
            .append("orderGoodsId", getOrderGoodsId())
            .append("orderGoodsAttributes", getOrderGoodsAttributes())
            .append("orderGoodsCount", getOrderGoodsCount())
            .append("orderOldprice", getOrderOldprice())
            .append("orderNewprice", getOrderNewprice())
            .append("orderTime", getOrderTime())
            .append("orderStatus", getOrderStatus())
            .append("orderPayStatus", getOrderPayStatus())
            .append("orderShipStatus", getOrderShipStatus())
            .append("orderReceiptStatus", getOrderReceiptStatus())
            .append("orderEvaluationStatus", getOrderEvaluationStatus())
            .append("orderAftersalesStatus", getOrderAftersalesStatus())
            .append("orderConfirmReceipt", getOrderConfirmReceipt())
            .toString();
    }
}
